STRUCTURI DE DATE

CUPRINS

1. Introducere

2. Tipuri de date si date elementare

2.1 Date si informatii
2.2 Clasificari ale datelor
2.3 Modele de prezentare a datelor
2.4 Cerinte de definire a datelor
2.5 Cerinte de initializare si utilizare
2.6 Cerinte de lizibilitate a programului

3. Programare orientata obiect

3.1 Abstractizarea datelor. Clasa si obiect
3.2 Definirea si instantierea unei clase
3.3 Functii membre. Pointerul this. Constructor. Destructor. Operator =
3.4 Masive de obiecte
3.5 Separarea interfetei de implementare. Supraincarcarea operatorilor
3.6 Derivarea claselor si functii virtuale
3.7 Functii si clase template

4. Masivele - structuri de date omogene si contigue

4.1 Masive unidimensionale
4.2 Masive bidimensionale
4.3 Insiruirea masivelor bidimensionale
4.4 Operatii cu masive bidimensionale
4.5 Masive multidimensionale

5. Functii de prelucrare cu masive

5.1 Functii de intrare-iesire
5.2 Proceduri de calcul
5.3 Functii de comparare
5.4 Funcţii de prelucrare
5.5 Lucrul cu masivele vazute ca vectori

6. Matrice rare

6.1 Concepte de baza
6.2 Memorarea matricelor rare
6.3 Determinarea gradului de umplere al unei matrice rare
6.4 Software orientat spre lucrul cu matrice rare
6.5 Adunarea, scaderea si transpunerea
6.6 Inmultirea si inversarea matricelor rare
6.7 Tipuri particulare de matrice rare
6.8 Estimarea parametrilor unei regresii statistice folosind clasa MR

7. Articolul-structura de date neomogena si contigua

7.1 Structuri de date pozitionale
7.2 Structuri de date ierarhizate
7.3 Vectori de structuri si structuri de vectori

8. Variabile pointer

8.1 Tipul variabilei pointer
8.2 Aritmetica variabilelor pointer
8.3 Niveluri de indirectare
8.4 Vectori si matrice de pointeri
8.5 Variabile de tip pointer si structurile de date de tip articol
8.6 Definirea si utilizarea variabilelor pointer in limbajul C++

9. Reuniunile de date contigue

9.1 Necesitatea restructurarii datelor
9.2 Funcţia de reunire
9.3 Zonele de memorie tampon-gazde ale reuniunilor de date contigue

10. Listele - structuri dinamice necontigue

10.1 Consideratii privind structurile de date de tip lista
10.2 Lista simplu inlantuita
10.2.1 Crearea listelor. Insertia nodurilor
10.2.2 Localizarea unui nod
10.2.3 Suprimarea nodurilor
10.3 Lista circulara simplu inlantuita
10.4 Structuri de date dinamice necontigue
10.5 Modelul grafic al listei ca structura necontigua
10.6 Operatii cu liste liniare simplu inlantuite
10.7 Liste dublu inlantuite

11. Stive si cozi

11.1 Consideratii privind structurile de date de tip stiva si coada
11.2 Caracteristicile structurilor de date de tip stiva
11.3 Operaţii de baza cu stive
11.4 Evaluarea expresiilor matematice cu ajutorul stivei si cozii

12. Arbori binari si arbori de cautare

12.1 Structura de date de tip arborescent
12.2 Transformarea arborilor oarecare in arbori binari
12.3 Arbori binari de cautare
12.4 Aplicatii care utilizeaza structura de date de tip arbore binar cautare

13. Arbori B

13.1 Arbori B. Definitie. Proprietati
13.2 Operatii de baza intr-un arbore B
13.3 Algoritmii C++ pentru inserarea unei valori de cheie intr-un arbore B
13.4 Algoritmii C++ pentru stergerea unei valori de cheie intr-un arbore B

14. Arbori echilibrati

14.1 Echilibrarea structurilor arborescente
14.2 Caracteristici ale arborilor AVL
14.3 Operatii pe arbori AVL
14.4 Caracteristici ale arborilor Rosu & Negru
14.5 Operatii pe arbori Rosu & Negru

15. Heap

15.1 Structura de tip Heap
15.2 Implementarea structurii Heap
15.3 Cozi de prioritate
15.4 Sortarea datelor prin HeapSort

16. Grafuri

16.1 Structura de date de tip graf
16.2 Implementarea grafului
16.3 Traversarea unui graf
16.4 Închiderea tranzitivă a grafului
16.5 Problema drumului de lungime minimă în graf
16.6 Operaţii de concatenare şi deconcatenare cu grafuri

17. Tabele de dispersie

17.1 Structura de date de tip tabela de dispersie
17.2 Chei si functii hash
17.3 Evitarea coliziunilor
17.4 Implementare

18. Fisiere

18.1 Structuri de date externe
18.2 Criterii de clasificare a fisierelor
18.3 Fisiere secventiale
18.4 Fisiere secvential-indexate
18.5 Fisiere aleatoare
18.6 Fisiere interdependente
18.7 Fisiere inlantuite
18.8 Fisierele bazei de date

19. Expresii de definire si referire ale structurilor de date

19.1 Construirea expresiilor
19.2 Expresii de definire
19.3 Expresii de referire
19.4 Expresii ale structurilor agregate

20. Standard Template Library - STL

20.1 Structura STL
20.2 Containere STL
20.3 Iteratori STL
20.4 Algoritmi STL

21. Conversii ale structurilor de date

21.1 Procese de conversie
21.2 Conversie masiv unidimensional - lista simpla sau lista dubla
21.3 Conversie masiv bidimensional - masiv unidimensional
21.4 Conversie listă simpla - fisier
21.5 Conversie fisier - lista simpla
21.6 Conversie arbore binar - fisier
21.7 Conversie graf - matrice
21.8 Omogenitatea prelucrarilor
21.9 Resursele conversiilor

22. Utilizarea structurilor de date in clonarea informatica

22.1 Conceptul de ortogonalitate a elementelor
22.2 Indicatori ai diferentelor masurate dintre proceduri
22.3 Structura software pentru analiza calitativa a noilor elemente incluse in baze de date

23. Compactarea si compresia datelor

23.1 Parametrii stocarii datelor
23.2 Compactarea la nivel de caracter
23.3 Compactarea la nivel de cuvant
23.4 Compactarea prin analiza caracteristicilor textului
23.5 Compactare prin asocierea unor coduri ce permit eliminarea separatorilor
23.6 Compactarea prin identificarea de subsiruri repetitive
23.7 Compactarea programelor date in forma executabila
23.8 Compactarea datelor numerice
23.9 Programe care efectueaza compactarea

24. Utilizarea structurilor de date in compresia datelor

24.1 Coduri de lungime fixa
24.2 Coduri de lungime variabila
24.3 Structuri de seturi de date
24.4 Indici de evaluare
24.5 Alegerea algoritmului de compresie
24.6 Rezultate experimentale

25. Procese de agregare software

25.1 Componente software
25.2 Agregarea pe orizontala
25.3 Agregarea pe verticala
25.4 Ortogonalitatea software agregat
25.5 Optimizarea in procese de agregare
25.6 Rezultate experimentale

26. Utilizarea structurilor de date in testarea software

26.1 Generatoare de date de test (GDT)
26.2 Generator de fisiere de test
26.3 Generatoare de matrice de test
26.4 Fisiere date de test livrate
26.5 Testarea programelor cu structuri statice
26.6 Particularitati ale testarii programelor cu structuri dinamice
26.7 Procese de testare pentru programele cu structuri agregate

27. Managementul calitatii datelor si a structurilor de date

27.1 Volumul datelor
27.2 Caracteristicile de calitate a datelor
27.3 Metricile datelor
27.4 Managementul calitatii datelor
27.5 Costul datelor

28. Structuri de date si acces in baze de date

28.1 Stocarea datelor
28.2 Concepte generale de organizare a fisierelor
28.3 Fişiere secvenţiale
28.4 Indecşi
28.5 Fisiere indexat secventiale
28.6 Fisiere indexate
28.7 Fisiere cu dispersie

29. Structuri folosite in procese de cautare

29.1 Tipologii de aplicatii
29.2 Chei de regasire
29.3 Algoritmi de cautare
29.4 Mecanisme flexibile de regasire

30. Structuri de date in securizarea informatiei

30.1 Structuri si algoritmi utilizati in securizarea informatiei
30.2 Structuri de date la nivelul operaţiilor matematice
30.3 Structuri de date la nivelul etapelor algoritmului de criptare/decriptare
30.4 Structuri de date la nivelul de cifru al algoritmului
30.5 Structuri de date la nivelul protocoalelor de transmisie a datelor şi al memorarii certificatelor publice

31. Complexitatea structurilor de date

31.1 Noţiunea de complexitate
31.2 Modelarea matematica a complexitatii algoritmilor
31.3 Clase de complexitate
31.4 Metode de calcul pentru indicatorii de complexitate

32. Gradul de ocupare a zonei de memorie

32.1 Zone de memorie
32.2 Zone de memorie asociate listelor
32.3 Zone de memorie asociate arborilor
32.4 Zone de memorie asociate grafurilor
32.5 Zone de memorie asociate masivelor

33. Structuri de text uniform

33.1 Text uniform
33.2 Structuri liniare de text uniform
33.3 Structuri arborescente de text uniform
33.4 Agregarea structurilor
33.5 Complexitatea structurilor de text uniform

34. Inspectia software

34.1 Audit informatic
34.2 Necesitatea si obiectivele inspectiei software
34.3 Locul inspectiei software in cadrul auditului informatic
34.4 Structura echipei de inspectie software
34.5 Planificarea inspectiei software
34.6 Etapa de prezentare
34.7 Etapa de pregatire a inspectiei
34.8 Etapa de intalnire
34.9 Etapa de refacere
34.10 Etapa de verificare a refacerii
34.11 Elaborarea rapoartelor de inspectie
34.12 Inspecţie software automata

35. Modelul de date XML

35.1 Documente XML
35.2 Modele XML

36. Bilete de examen date in anii trecuti

37. Subiecte propuse

Bibliografie

Anexa 1 Functii de prelucrare a structurilor de date

Anexa 2 Determinarea stabilitatii domeniului Structuri de Date



REVENIRE